#include<iostream>
#include<cstring>
using namespace std;
int dp[101][20005],num[101],path[101];
int main()
{
	int n,T,mid=10000,i,j;
	cin>>n>>T;
	for(i=1;i<=n;i++)
		cin>>num[i];
	memset(dp,-1,sizeof(dp));
	dp[1][mid+num[1]]=1;
	dp[2][mid+num[1]-num[2]]=0;
	for(i=3;i<=n;i++)
		for(j=0;j<=20000;j++)
		{
			if(dp[i-1][j]!=-1)
			{
				dp[i][j+num[i]]=1;
				dp[i][j-num[i]]=0;
			}
		}
	for(i=n,j=T+mid;i>=1;i--)
	{
		if(dp[i][j]==1)
		{
			path[i]=1;
			j-=num[i];
		}
		else if(dp[i][j]==0)
		{
			path[i]=0;
			j+=num[i];
		}
	}
	int m=0;
	for(i=2;i<=n;i++)
		if(path[i]==1)
			cout<<i-1-m++<<endl;
	for(i=2;i<=n;i++)
		if(path[i]==0)
			cout<<1<<endl;
	return 0;
}

